.container {
  width: 100%;
  padding: 16px 16px 32px;

  .title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 12px;
  }

  .rank-badge {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;

    .trend {
      margin-right: 2px;
      // padding-top: 2px;
      font-size: 18px;
      line-height: 1em;
    }

    .rank {
      position: relative;

      span{
        font-weight: 600;
      }

      sup{
        margin-left: 2px;
      }
    }

    &.up { 
      color: var(--success); 
    }
    
    &.down { 
      color: var(--error)
    }
  }
  
  .top {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;

    .big-card {
      display: flex;
      flex-direction: column;
      overflow: hidden;
      cursor: pointer;

      .thumb-lg {
        position: relative;
        width: 100%;
        height: var(--height);
        border-radius: 8px;
        overflow: hidden;
        background: rgba(var(--gray-1-alpha), 0.5);

        img {
          width: 100%;
          height: 100%;
          max-height: 240px;
          object-fit: cover;
        }

        .rank-badge {
          position: absolute;
          left: 2px;
          top: 2px;
          padding: 0 6px;
          border-radius: 6px;
          background-color: var(--gray-3);
        }
      }

      .name-line {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 8px;
        overflow: hidden;

        .name {
          font-weight: 600;
          overflow: hidden;
          text-overflow: ellipsis;
          white-space: nowrap;
        }
      }
    }
  }

  .divider {
    height: 1px;
    background: var(--gray-2);
    margin: 16px 0;
  }

  .mid {
    display: flex;
    flex-direction: column;
    gap: 12px;

    .mid-item {
      display: flex;
      align-items: center;
      gap: 12px;
      cursor: pointer;

      .mid-left { 
        display: flex; 
        align-items: center; 
        flex-shrink: 0;
        gap: 8px;

        .rank {
          color: var(--gray-9)
        }

        .thumb-sm {
          width: 40px;
          height: 40px;
          border-radius: 6px;
          overflow: hidden;
          background: rgba(var(--gray-1-alpha), 0.5);

          img{
            width: 100%;
            height: 100%;
            object-fit: cover;
          }
        }
      }

      .mid-right {
        flex-grow: 1;

        .name {
          overflow: hidden;
          text-overflow: ellipsis;
          white-space: nowrap;
          color: var(--gray-8);
        }
      }

      .rank-badge {
        position: relative;
        flex-shrink: 0;
        min-width: 60px;
        justify-content: flex-start;
      }
    }
  }

}